package com.wicket.okrcalc.integration;

import com.wicket.okrcalc.common.ro.OkrResult;
import com.wicket.okrcalc.integration.dto.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@FeignClient("calc")
public interface FwCalcInterfaceModeClient {
/**
   * D4-获取内存中业务字段(公共)
   */
    @PostMapping("/calc/interfaceMode/obtainGetPublicFieldCacheCom")
    public OkrResult<ObtainGetPublicFieldCacheComRespDto> obtainGetPublicFieldCacheCom(ObtainGetPublicFieldCacheComReqDto reqDTO);
/**
   * D4-执行业务应用业务字段推送内存(公共)
   */
    @PostMapping("/calc/interfaceMode/implementBizBusinessFieldPushMemoryCom")
    public OkrResult<ImplementBizBusinessFieldPushMemoryComRespDto> implementBizBusinessFieldPushMemoryCom(ImplementBizBusinessFieldPushMemoryComReqDto reqDTO);
/**
   * D4-计算两个数值相乘服务(公共)
   */
    @PostMapping("/calc/interfaceMode/calculateMultiplyTwoValuesCom")
    public OkrResult<CalculateMultiplyTwoValuesComRespDto> calculateMultiplyTwoValuesCom(CalculateMultiplyTwoValuesComReqDto reqDTO);
/**
   * D4-计算数据集最大小值记录(公共)
   */
    @PostMapping("/calc/interfaceMode/calculateDataBigMiniRecordComNew")
    public OkrResult<CalculateDataBigMiniRecordComNewRespDto> calculateDataBigMiniRecordComNew(CalculateDataBigMiniRecordComNewReqDto reqDTO);
/**
   * D4大屏接收字段入参(公共)
   */
    @PostMapping("/calc/interfaceMode/implementAcceptFieldCom")
    public OkrResult<ImplementAcceptFieldComRespDto> implementAcceptFieldCom(ImplementAcceptFieldComReqDto reqDTO);
/**
   * D4新增内存业务数据(公共)
   */
    @PostMapping("/calc/interfaceMode/addCalcMemoryBusinessDataCom")
    public OkrResult<AddCalcMemoryBusinessDataComRespDto> addCalcMemoryBusinessDataCom(AddCalcMemoryBusinessDataComReqDto reqDTO);
/**
   * D4查询内存业务数据详情(公共)
   */
    @PostMapping("/calc/interfaceMode/queryClacMemoryBusinessDataDetailCom")
    public OkrResult<QueryClacMemoryBusinessDataDetailComRespDto> queryClacMemoryBusinessDataDetailCom(QueryClacMemoryBusinessDataDetailComReqDto reqDTO);

}
